package demo4;

import demo3.SingletonLazy00;

/**
 * 修改第一次写的懒汉模式,加了一个锁不过锁的位置不对
 */
public class SingletonLazy01 {
    //一开始不初始化，等到使用到的时候在初始化
    private  static  volatile SingletonLazy01 instance=null;
    //构造方法私有化
    private SingletonLazy01(){}
    //对外提供一个静态方法获取对象
    public static SingletonLazy01 getInstance(){
        if (instance==null){
            synchronized (SingletonLazy01.class)
            {
                instance=new SingletonLazy01();
            }
        }
        return instance;
    }
}
